EN FR
EN FR


Section: Software

NEPI

Participants : Thierry Turletti [correspondant] , Alina Quereilhac.

NEPI stands for Network Experimentation Programming Interface. NEPI implements a new experiment plane used to perform ns-3 simulations, planetlab and emulation experiments, and, more generally, any experimentation tool used for networking research. Its goal is to make it easier for experimenters to describe the network topology and the configuration parameters, to specify trace collection information, to deploy and monitor experiments, and, finally, collect experiment trace data into a central datastore. NEPI is a python API (with an implementation of that API) to perform all the above-mentioned tasks and allows users to access these features through a simple yet powerful graphical user interface called NEF.

During the year 2012 we improved support for PlanetLab experiments in NEPI, adding the ability to create customized routing overlays on top of PlanetLab. Details on these improvements can be found in [48] . We also included the ability to easily conduct CCNx http://www.ccnx.org/ experiments using PlanetLab nodes. This work was presented at the CCNx 2012 community meeting [73] , and has had a good impact on the number of NEPI users.

Additionally, ongoing work on the context of the Openlab, Fed4Fire and Simulbed projects, has lead to a number of interesting extensions to NEPI. We are currently developing support to conduct experiments on OMF wireless testbeds (http://mytestbed.net/). We are also working to support DCE enabled experimentation, using the ns-3 simulator, in NEPI. Furthermore, recent work on improving NEPI's experiment control architecture, to enable both easier extension to new experimentation platforms and improve the user ability to control of experiment tasks, was presented at the CoNEXT'12 Students Workshop (see [61] ).

For more information, see also the web page http://nepi.inria.fr .

  • Version: 2.0

  • ACM: C.2.2, C.2.4

  • Keywords: networking experimentation

  • License: GPL (2)

  • Type of human computer interaction: python library, QT GUI

  • OS/Middelware: Linux

  • Required library or software: python – http://www.python.orghttp://rpyc.sourceforge.net

  • Programming language: python